package hibernate.model;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.NamedQueries;
import org.hibernate.annotations.NamedQuery;
import org.hibernate.annotations.Parameter;

@SuppressWarnings("serial")
@Entity
@Table(name = "telefon", catalog = "emmy")
@NamedQueries({  // Şimdilik bu query'lere gerek yok ihtiyaç olursa diye hazırlandı...
@NamedQuery(name = "findTelUretici", 	query = "from Telefon where ureticiid = :tUretici"),
@NamedQuery(name = "findTelBoyut",   	query = "from Telefon where boyutlari like :tBoyut"),
@NamedQuery(name = "findTelAgirlik", 	query = "from Telefon where agirlik like :tAgirlik"),
@NamedQuery(name = "findTelGsmBandDes", query = "from Telefon where gsmBandDestek like :tGsmBandDes"),
@NamedQuery(name = "findTelBekleSure", 	query = "from Telefon where beklemeSuresi like :tBeklemeSuresi"),
@NamedQuery(name = "findTelKonusSure", 	query = "from Telefon where konusmaSuresi like :tKonusmaSuresi"),
@NamedQuery(name = "findTelKameraOz", 	query = "from Telefon where kameraOzellik like :tKameraOz"),
@NamedQuery(name = "findTelBluetooth", 	query = "from Telefon where bluetooth like :tBlueTooth"),
@NamedQuery(name = "findTelKizilOtesi", query = "from Telefon where kizilotesi like :tKizilOtesi"),
@NamedQuery(name = "findTelCiftSim", 	query = "from Telefon where ciftSim like :tCiftSim"),
@NamedQuery(name = "findTelEkranBoyut", query = "from Telefon where ekranBoyutlari like :tEkranBoyut"),
@NamedQuery(name = "findTelisletimSis", query = "from Telefon where isletimSis like :tisSistemi"),
@NamedQuery(name = "findTelTaraycDest", query = "from Telefon where kizilotesi like :tKizilOtesi"),
@NamedQuery(name = "findTelGprs", 		query = "from Telefon where gprs like :tGprs"),
@NamedQuery(name = "findTelWifi", 		query = "from Telefon where wifi like :tWifi"),
@NamedQuery(name = "findTelVideoKayit", query = "from Telefon where videoKaydetme like :tVideoKayit"),
@NamedQuery(name = "findTelVideoFormat",query = "from Telefon where videoFormat like :tVideoFormat"),
@NamedQuery(name = "findTelMuzikFormat",query = "from Telefon where muzikFormat like :tMuzikFormat"),
@NamedQuery(name = "findTelMuzikOynati",query = "from Telefon where muzikOynatici like :tMuzikOynatici"),
@NamedQuery(name = "findTelMobilTv",	query = "from Telefon where mobilTv like :tMobilTv"),
@NamedQuery(name = "findTelFmRadioDes", query = "from Telefon where fmRadioDestek like :tFmRadioDestek"),
@NamedQuery(name = "findTelFmRadioKyt", query = "from Telefon where fmRadioKayit like :tFmRadioKayit"),
@NamedQuery(name = "findTelOfflineModu",query = "from Telefon where cevrimdisiModu like :tOfflineModu"),
@NamedQuery(name = "findTelUcusModu",	query = "from Telefon where ucusModu like :tUcusModu"),
@NamedQuery(name = "findTelMsjTurleri", query = "from Telefon where mesajlasmaTurleri like :tMesajlasmaTurleri"),
@NamedQuery(name = "findTelDahiliHfz",	query = "from Telefon where dahiliHafiza like :tDahiliHafiza"),
@NamedQuery(name = "findTelHrcHafzDes", query = "from Telefon where hariciHafizaDestek like :tHariciHfzDestek"),
@NamedQuery(name = "findTelRehberHfz",  query = "from Telefon where rehberHafiza like :tRehberHafiza"),
@NamedQuery(name = "findTelTakvim", 	query = "from Telefon where takvim like :tTakvim"),
@NamedQuery(name = "findTelAlarm", 		query = "from Telefon where alarm like :tAlarm"),
@NamedQuery(name = "findTelKronometre", query = "from Telefon where kronometre like :tKronometre"),
@NamedQuery(name = "findTelHesapMakine",query = "from Telefon where hesapMakinesi like :tHesapMakinesi"),
@NamedQuery(name = "findTelHoparlorOze",query = "from Telefon where hoparlorOzellik like :tHoparlorOzellik"),
@NamedQuery(name = "findTelGps",		query = "from Telefon where gps like :tGps"),
@NamedQuery(name = "findTelGarantiSure",query = "from Telefon where garantiSuresi like :tGarantiSuresi")
})
public class Telefon implements java.io.Serializable {

	private long aygitid;
	private Sirketprofil sirketprofil;
	private Aygit aygit;
	private String boyutlari;
	private String agirlik;
	private String gsmBandDestek;
	private String beklemeSuresi;
	private String konusmaSuresi;
	private String kameraOzellik;
	private String kizilotesi;
	private String bluetooth;
	private String ciftSim;
	private String ekranBoyutlari;
	private String isletimSis;
	private String tarayiciDestek;
	private String javaDestek;
	private String gprs;
	private String wifi;
	private String videoKaydetme;
	private String videoFormat;
	private String muzikFormat;
	private String muzikOynatici;
	private String mobilTv;
	private String fmRadioDestek;
	private String fmRadioKayit;
	private String cevrimdisiModu;
	private String ucusModu;
	private String mesajlasmaTurleri;
	private String dahiliHafiza;
	private String hariciHafizaDestek;
	private String rehberHafiza;
	private String takvim;
	private String alarm;
	private String kronometre;
	private String hesapMakinesi;
	private String hoparlorOzellik;
	private String mobilizleyici;
	private String gps;
	private String garantiSuresi;

	public Telefon() {
	}

	public Telefon(Sirketprofil sirketprofil, Aygit aygit, String boyutlari, String agirlik,
			String gsmBandDestek, String beklemeSuresi, String konusmaSuresi,
			String kameraOzellik, String kizilotesi, String bluetooth,
			String ciftSim, String ekranBoyutlari, String isletimSis,
			String tarayiciDestek, String javaDestek, String gprs, String wifi,
			String videoKaydetme, String videoFormat, String muzikFormat,
			String muzikOynatici, String mobilTv, String fmRadioDestek,
			String fmRadioKayit, String cevrimdisiModu, String ucusModu,
			String mesajlasmaTurleri, String dahiliHafiza,
			String hariciHafizaDestek, String rehberHafiza, String takvim,
			String alarm, String kronometre, String hesapMakinesi,
			String hoparlorOzellik, String mobilizleyici, String gps,
			String garantiSuresi) {
		this.sirketprofil = sirketprofil;
		this.aygit = aygit;
		this.boyutlari = boyutlari;
		this.agirlik = agirlik;
		this.gsmBandDestek = gsmBandDestek;
		this.beklemeSuresi = beklemeSuresi;
		this.konusmaSuresi = konusmaSuresi;
		this.kameraOzellik = kameraOzellik;
		this.kizilotesi = kizilotesi;
		this.bluetooth = bluetooth;
		this.ciftSim = ciftSim;
		this.ekranBoyutlari = ekranBoyutlari;
		this.isletimSis = isletimSis;
		this.tarayiciDestek = tarayiciDestek;
		this.javaDestek = javaDestek;
		this.gprs = gprs;
		this.wifi = wifi;
		this.videoKaydetme = videoKaydetme;
		this.videoFormat = videoFormat;
		this.muzikFormat = muzikFormat;
		this.muzikOynatici = muzikOynatici;
		this.mobilTv = mobilTv;
		this.fmRadioDestek = fmRadioDestek;
		this.fmRadioKayit = fmRadioKayit;
		this.cevrimdisiModu = cevrimdisiModu;
		this.ucusModu = ucusModu;
		this.mesajlasmaTurleri = mesajlasmaTurleri;
		this.dahiliHafiza = dahiliHafiza;
		this.hariciHafizaDestek = hariciHafizaDestek;
		this.rehberHafiza = rehberHafiza;
		this.takvim = takvim;
		this.alarm = alarm;
		this.kronometre = kronometre;
		this.hesapMakinesi = hesapMakinesi;
		this.hoparlorOzellik = hoparlorOzellik;
		this.mobilizleyici = mobilizleyici;
		this.gps = gps;
		this.garantiSuresi = garantiSuresi;
	}

	@GenericGenerator(name = "generator", strategy = "foreign", parameters = @Parameter(name = "property", value = "aygit"))
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "aygitid", unique = true, nullable = false)
	public long getAygitid() {
		return this.aygitid;
	}

	public void setAygitid(long aygitid) {
		this.aygitid = aygitid;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "ureticiid", nullable = false)
	public Sirketprofil getSirketprofil() {
		return this.sirketprofil;
	}

	public void setSirketprofil(Sirketprofil sirketprofil) {
		this.sirketprofil = sirketprofil;
	}

	@OneToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
	@PrimaryKeyJoinColumn
	public Aygit getAygit() {
		return this.aygit;
	}

	public void setAygit(Aygit aygit) {
		this.aygit = aygit;
	}

	@Column(name = "boyutlari", nullable = false, length = 20)
	public String getBoyutlari() {
		return this.boyutlari;
	}

	public void setBoyutlari(String boyutlari) {
		this.boyutlari = boyutlari;
	}

	@Column(name = "agirlik", nullable = false, length = 20)
	public String getAgirlik() {
		return this.agirlik;
	}

	public void setAgirlik(String agirlik) {
		this.agirlik = agirlik;
	}

	@Column(name = "gsmBandDestek", nullable = false, length = 20)
	public String getGsmBandDestek() {
		return this.gsmBandDestek;
	}

	public void setGsmBandDestek(String gsmBandDestek) {
		this.gsmBandDestek = gsmBandDestek;
	}

	@Column(name = "beklemeSuresi", nullable = false, length = 20)
	public String getBeklemeSuresi() {
		return this.beklemeSuresi;
	}

	public void setBeklemeSuresi(String beklemeSuresi) {
		this.beklemeSuresi = beklemeSuresi;
	}

	@Column(name = "konusmaSuresi", nullable = false, length = 20)
	public String getKonusmaSuresi() {
		return this.konusmaSuresi;
	}

	public void setKonusmaSuresi(String konusmaSuresi) {
		this.konusmaSuresi = konusmaSuresi;
	}

	@Column(name = "kameraOzellik", nullable = false, length = 20)
	public String getKameraOzellik() {
		return this.kameraOzellik;
	}

	public void setKameraOzellik(String kameraOzellik) {
		this.kameraOzellik = kameraOzellik;
	}

	@Column(name = "kizilotesi", nullable = false, length = 20)
	public String getKizilotesi() {
		return this.kizilotesi;
	}

	public void setKizilotesi(String kizilotesi) {
		this.kizilotesi = kizilotesi;
	}

	@Column(name = "bluetooth", nullable = false, length = 20)
	public String getBluetooth() {
		return this.bluetooth;
	}

	public void setBluetooth(String bluetooth) {
		this.bluetooth = bluetooth;
	}

	@Column(name = "ciftSim", nullable = false, length = 20)
	public String getCiftSim() {
		return this.ciftSim;
	}

	public void setCiftSim(String ciftSim) {
		this.ciftSim = ciftSim;
	}

	@Column(name = "ekranBoyutlari", nullable = false, length = 20)
	public String getEkranBoyutlari() {
		return this.ekranBoyutlari;
	}

	public void setEkranBoyutlari(String ekranBoyutlari) {
		this.ekranBoyutlari = ekranBoyutlari;
	}

	@Column(name = "isletimSis", nullable = false, length = 20)
	public String getIsletimSis() {
		return this.isletimSis;
	}

	public void setIsletimSis(String isletimSis) {
		this.isletimSis = isletimSis;
	}

	@Column(name = "tarayiciDestek", nullable = false, length = 20)
	public String getTarayiciDestek() {
		return this.tarayiciDestek;
	}

	public void setTarayiciDestek(String tarayiciDestek) {
		this.tarayiciDestek = tarayiciDestek;
	}

	@Column(name = "javaDestek", nullable = false, length = 20)
	public String getJavaDestek() {
		return this.javaDestek;
	}

	public void setJavaDestek(String javaDestek) {
		this.javaDestek = javaDestek;
	}

	@Column(name = "gprs", nullable = false, length = 20)
	public String getGprs() {
		return this.gprs;
	}

	public void setGprs(String gprs) {
		this.gprs = gprs;
	}

	@Column(name = "wifi", nullable = false, length = 20)
	public String getWifi() {
		return this.wifi;
	}

	public void setWifi(String wifi) {
		this.wifi = wifi;
	}

	@Column(name = "videoKaydetme", nullable = false, length = 20)
	public String getVideoKaydetme() {
		return this.videoKaydetme;
	}

	public void setVideoKaydetme(String videoKaydetme) {
		this.videoKaydetme = videoKaydetme;
	}

	@Column(name = "videoFormat", nullable = false, length = 20)
	public String getVideoFormat() {
		return this.videoFormat;
	}

	public void setVideoFormat(String videoFormat) {
		this.videoFormat = videoFormat;
	}

	@Column(name = "muzikFormat", nullable = false, length = 20)
	public String getMuzikFormat() {
		return this.muzikFormat;
	}

	public void setMuzikFormat(String muzikFormat) {
		this.muzikFormat = muzikFormat;
	}

	@Column(name = "muzikOynatici", nullable = false, length = 20)
	public String getMuzikOynatici() {
		return this.muzikOynatici;
	}

	public void setMuzikOynatici(String muzikOynatici) {
		this.muzikOynatici = muzikOynatici;
	}

	@Column(name = "mobilTv", nullable = false, length = 20)
	public String getMobilTv() {
		return this.mobilTv;
	}

	public void setMobilTv(String mobilTv) {
		this.mobilTv = mobilTv;
	}

	@Column(name = "fmRadioDestek", nullable = false, length = 20)
	public String getFmRadioDestek() {
		return this.fmRadioDestek;
	}

	public void setFmRadioDestek(String fmRadioDestek) {
		this.fmRadioDestek = fmRadioDestek;
	}

	@Column(name = "fmRadioKayit", nullable = false, length = 20)
	public String getFmRadioKayit() {
		return this.fmRadioKayit;
	}

	public void setFmRadioKayit(String fmRadioKayit) {
		this.fmRadioKayit = fmRadioKayit;
	}

	@Column(name = "cevrimdisiModu", nullable = false, length = 20)
	public String getCevrimdisiModu() {
		return this.cevrimdisiModu;
	}

	public void setCevrimdisiModu(String cevrimdisiModu) {
		this.cevrimdisiModu = cevrimdisiModu;
	}

	@Column(name = "ucusModu", nullable = false, length = 20)
	public String getUcusModu() {
		return this.ucusModu;
	}

	public void setUcusModu(String ucusModu) {
		this.ucusModu = ucusModu;
	}

	@Column(name = "mesajlasmaTurleri", nullable = false, length = 20)
	public String getMesajlasmaTurleri() {
		return this.mesajlasmaTurleri;
	}

	public void setMesajlasmaTurleri(String mesajlasmaTurleri) {
		this.mesajlasmaTurleri = mesajlasmaTurleri;
	}

	@Column(name = "dahiliHafiza", nullable = false, length = 20)
	public String getDahiliHafiza() {
		return this.dahiliHafiza;
	}

	public void setDahiliHafiza(String dahiliHafiza) {
		this.dahiliHafiza = dahiliHafiza;
	}

	@Column(name = "hariciHafizaDestek", nullable = false, length = 20)
	public String getHariciHafizaDestek() {
		return this.hariciHafizaDestek;
	}

	public void setHariciHafizaDestek(String hariciHafizaDestek) {
		this.hariciHafizaDestek = hariciHafizaDestek;
	}

	@Column(name = "rehberHafiza", nullable = false, length = 20)
	public String getRehberHafiza() {
		return this.rehberHafiza;
	}

	public void setRehberHafiza(String rehberHafiza) {
		this.rehberHafiza = rehberHafiza;
	}

	@Column(name = "takvim", nullable = false, length = 20)
	public String getTakvim() {
		return this.takvim;
	}

	public void setTakvim(String takvim) {
		this.takvim = takvim;
	}

	@Column(name = "alarm", nullable = false, length = 20)
	public String getAlarm() {
		return this.alarm;
	}

	public void setAlarm(String alarm) {
		this.alarm = alarm;
	}

	@Column(name = "kronometre", nullable = false, length = 20)
	public String getKronometre() {
		return this.kronometre;
	}

	public void setKronometre(String kronometre) {
		this.kronometre = kronometre;
	}

	@Column(name = "hesapMakinesi", nullable = false, length = 20)
	public String getHesapMakinesi() {
		return this.hesapMakinesi;
	}

	public void setHesapMakinesi(String hesapMakinesi) {
		this.hesapMakinesi = hesapMakinesi;
	}

	@Column(name = "hoparlorOzellik", nullable = false, length = 20)
	public String getHoparlorOzellik() {
		return this.hoparlorOzellik;
	}

	public void setHoparlorOzellik(String hoparlorOzellik) {
		this.hoparlorOzellik = hoparlorOzellik;
	}

	@Column(name = "mobilizleyici", nullable = false, length = 20)
	public String getMobilizleyici() {
		return this.mobilizleyici;
	}

	public void setMobilizleyici(String mobilizleyici) {
		this.mobilizleyici = mobilizleyici;
	}

	@Column(name = "gps", nullable = false, length = 20)
	public String getGps() {
		return this.gps;
	}

	public void setGps(String gps) {
		this.gps = gps;
	}

	@Column(name = "garanti_suresi", nullable = false, length = 20)
	public String getGarantiSuresi() {
		return this.garantiSuresi;
	}

	public void setGarantiSuresi(String garantiSuresi) {
		this.garantiSuresi = garantiSuresi;
	}
}